As organizations have become more reliant on computers for performing day to day activities, so to has the reliance on networks and information technology (IT) infrastructures increased. It is well known that large organizations having offices and other facilities in different geographical locations utilize centralized computing systems connected locally over local area networks (LAN) and across the geographical areas through wide-area networks (WAN).
As these organizations grow, the amount of data to be processed and handled by the centralized computing centers also grows. As a result, the IT infrastructures used by many organizations have moved away from reliance on centralized computing power and towards more robust and efficient distributed systems.
While the benefits of a distributed approach are numerous and well understood, there has arisen significant practical challenges in managing such systems for optimizing efficiency and to avoid redundancies and/or under-utilized hardware. In particular, one challenge occurs due to the sprawl that can occur over time as applications and servers proliferate. Decentralized control and decision making around capacity, the provisioning of new applications and hardware, and the perception that the cost of adding server hardware is generally inexpensive, have created environments with far more processing capacity than is required by the organization.
When cost is considered on a server-by-server basis, the additional cost of having underutilized servers is often not deemed to be troubling. However, when multiple servers in a large computing environment are underutilized, having too many servers can become a burden. Moreover, the additional hardware requires separate maintenance considerations; separate upgrades and requires the incidental attention that should instead be optimized to be more cost effective for the organization. Heat production and power consumption can also be a concern. Even considering only the cost of having redundant licenses, removing even a modest number of servers from a large computing environment can save a significant amount of cost on a yearly basis.
As a result, organizations have become increasingly concerned with such redundancies and how they can best achieve consolidation of capacity to reduce operating costs. The cost-savings objective can be evaluated on the basis of consolidation strategies such as, but not limited to: virtualization strategies, operating system (OS) level stacking strategies, database consolidation strategies, application stacking strategies, physical consolidation strategies, and storage consolidation strategies.
Virtualization involves virtualizing a physical system as a separate guest OS instance on a host machine. This enables multiple virtualized systems to run on a single physical machine, e.g. a server. Examples of virtualization technologies include VMware®, Microsoft Virtual Server®, IBM LPAR®, Solaris Containers®, Zones®, etc.
The consolidation strategies to be employed, for virtualization or otherwise, and the systems and applications to be consolidated, are to be considered taking into account the specific environment. Consolidation strategies should be chosen carefully to achieve the desired cost savings while maintaining or enhancing the functionality and reliability of the consolidated systems. Moreover, multiple strategies may often be required to achieve the full benefits of a consolidation initiative.
Complex systems configurations, diverse business requirements, dynamic workloads and the heterogeneous nature of distributed systems can cause incompatibilities between systems. These incompatibilities limit the combinations of systems that can be consolidated successfully. In enterprise computing environments, the virtually infinite number of possible consolidation permutations which include suboptimal and incompatibility system combinations make choosing appropriate consolidation solutions difficult, error-prone and time consuming.
It is therefore an object of the following to address the above concerns.